package com.dykj.fireFighting.api.base.analysis.service;
/*
* 设备分析接口
*/
import com.dykj.fireFighting.api.base.analysis.entity.DeviceRes;
import com.dykj.fireFighting.api.base.analysis.entity.EarlyWarningResult;
import com.dykj.fireFighting.api.base.analysis.entity.TongHuanBiRes;
import com.dykj.fireFighting.common.core.service.IBaseService;

import java.util.List;


public interface IDeviceAnalysisService extends IBaseService<EarlyWarningResult> {

    List<EarlyWarningResult> getEarlyWarningByYear(String beginTime, String endTime, String unitId, String centerId);

    List<EarlyWarningResult> getEarlyWarningByQuarter(String beginTime, String endTime, String unitId, String centerId);

    List<EarlyWarningResult> getEarlyWarningByMonth(String beginTime, String endTime, String unitId, String centerId);

    List<EarlyWarningResult> getEarlyWarningByDay(String beginTime, String endTime, String unitId, String centerId);

    Integer getSumNumToday();

    Integer getSumNumAll();

    List<DeviceRes> getLevelByUnitIdAndTime(String moudleType,String unitIds, String beginTime, String endTime);

    List<DeviceRes> getTrendByUnitIdAndTime(String moudleType,String unitIds, String beginTime, String endTime, String timeGranularity);

    List<DeviceRes> getAreaOrBusinessByTime(String moudleType, String beginTime, String endTime,String dataDimension);

    List<DeviceRes> getAreaOrBusinessTrend(String moudleType, String beginTime, String endTime, String dataDimension, String timeGranularity);

    List<DeviceRes> getAreaOrBusinessRatio(String moudleType, String beginTime, String endTime, String dataDimension);

    List<TongHuanBiRes> getTongBiByTimeAndUnitId(String moudleType, String beginTime, String endTime, String timeGranularity,String unitIds);

    List<TongHuanBiRes> getTongBiByTimeAndUnitIdByMonth(String moudleType, String beginTime, String endTime, String timeGranularity, String unitIds);

    List<TongHuanBiRes> getAreaOrBusinessTongBiByTime(String moudleType, String beginTime, String endTime, String timeGranularity, String dataDimension);

    List<TongHuanBiRes> getAreaOrBusinessTongBiByTimeByMonth(String moudleType, String beginTime, String endTime, String timeGranularity, String dataDimension);

    List<TongHuanBiRes> getHuanBiByTimeAndUnitId(String moudleType, String beginTime, String endTime, String timeGranularity, String unitIds);

    List<TongHuanBiRes> getAreaOrBusinessHuanBiByTime(String moudleType, String beginTime, String endTime, String timeGranularity, String dataDimension);
}
